Analytical reasoning